With the advent of the Internet, the number of web applications (i.e., applications that use HTTP or a similar network communications protocol) has grown significantly. The development of web applications, therefore, has become increasingly important to software companies competing in the Internet age.
Web application development using a model-view-controller paradigm typically includes tasks performed by a user interface developer and a backend developer. The user interface developer is the developer of the presentation or view logic. The backend developer is the developer of the control logic which includes the code that enables the web application to access or receive data from backend systems, process the data, and send processed data back to the backend systems. The backend systems include computing systems that may be queried to obtain data as necessary while executing a web application. Such data may include, for example, login information and customer data.
Web application development may be delayed because of the coupling and interdependence of the tasks of the user interface developer and the backend developer. For example, a user interface developer may be forced to wait for backend integration to progress further before being able to continue developing the user interface.